package cn.bingoogolapple.swipebacklayout.demo.activity;
import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.KeyEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import cn.bingoogolapple.androidcommon.adapter.BGADivider;
import cn.bingoogolapple.androidcommon.adapter.BGAOnRVItemClickListener;
import cn.bingoogolapple.androidcommon.adapter.BGAOnRVItemLongClickListener;
import cn.bingoogolapple.androidcommon.adapter.BGARecyclerViewScrollHelper;
import cn.bingoogolapple.swipebacklayout.demo.R;
import cn.bingoogolapple.swipebacklayout.demo.adapter.ContentAdapter;
/**
* Created by yyl on 2017/1/18.
*/
public class EditTextActivity extends BaseActivity {
private RecyclerView mContentRv;
private ContentAdapter mContentAdapter;
private EditText mMsgEt;
private BGARecyclerViewScrollHelper mRecyclerViewScrollHelper;
@Override
protected void initView(Bundle savedInstanceState) {
setContentView(R.layout.activity_edit_text);
mContentRv = getViewById(R.id.recyclerView);
mMsgEt = getViewById(R.id.et_edit_text_msg);
}
@Override
protected void setListener() {
mContentAdapter = new ContentAdapter(mContentRv);
mContentAdapter.setOnRVItemClickListener(new BGAOnRVItemClickListener() {
@Override
public void onRVItemClick(ViewGroup parent, View itemView, int position) {
Toast.makeText(parent.getContext(), "点击了条目 " + (position + 1), Toast.LENGTH_SHORT).show();
}
});
mContentAdapter.setOnRVItemLongClickListener(new BGAOnRVItemLongClickListener() {
@Override
public boolean onRVItemLongClick(ViewGroup parent, View itemView, int position) {
Toast.makeText(parent.getContext(), "长按了条目 " + (position + 1), Toast.LENGTH_SHORT).show();
return true;
}
});
mRecyclerViewScrollHelper = BGARecyclerViewScrollHelper.newInstance(mContentRv);
mMsgEt.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_GO) {
String msg = mMsgEt.getText().toString().trim();
if (!TextUtils.isEmpty(msg)) {
mMsgEt.setText("");
mContentAdapter.addLastItem(msg);
mRecyclerViewScrollHelper.scrollToPosition(mContentAdapter.getItemCount() - 1);
}
}
return true;
}
});
}
@Override
protected void processLogic(Bundle savedInstanceState) {
initToolbar();
mContentRv.addItemDecoration(BGADivider.newBitmapDivider());
mContentRv.setAdapter(mContentAdapter);
}
private void initToolbar() {
setSupportActionBar(mToolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle("测试 EditText 位于底部的情况");
}
}